Semiconductor memories are used in many electronic systems to store data that may be retrieved at a later time. As the demand has increased for electronic systems to be faster, have greater computing ability, and consume less power, semiconductor memories that may be accessed faster, store more data, and use less power have been continually developed to meet the changing needs. Part of the development includes creating new specifications for controlling and accessing semiconductor memories, with the changes in the specifications from one generation to the next directed to improving performance of the memories in the electronic systems.
Semiconductor memories are generally controlled by providing the memories with command signals, address signals, clock signals. The various signals may be provided by a memory controller, for example. The command signals may control the semiconductor memories to perform various memory operations, for example, a read operation to retrieve data from a memory, and a write operation to store data to the memory. With newly developed memories, the memories may be provided with system clock signals that are used for timing command signals and address signals, for example, and further provided with data clock signals that are used for timing read data provided by the memory and for timing write data provided from the memory.
In typical designs, read data is provided by a memory with known timing relative to receipt of an associated read command by the memory. The known timing is defined by read latency information RL. Similarly, write data is received by a memory with known timing relative to receipt of an associated write command by the memory. The known timing is defined by write latency information WL. The RL information and WL information are typically defined by numbers of clock cycles of system clock signals CK and CKF. For example, RL information may define a RL of 18 clock cycles of the system clock signals (tCKs). As a result, read data will be provided by a memory in 18 tCKs after the read command is received by the memory. The RL information and WL information may be programmed in the memory by a memory controller.
With regards to memory designs using data clock signals, the data clock signals are provided to a memory (e.g., from a memory controller) to synchronize provision of read data or receipt of write data by the memory. The data clock signals are provided according to a specification with a timing relative to receipt of a memory command in order to provide data or receive data to satisfy the RL/WL information. The memory responds to the active data clock signals and provides or receives the data accordingly.
Clock circuits included in a semiconductor memory may be used to generate internal clock signals that are used for performing various operations. For example, some clock circuits may provide multiphase clock signals based on the data clock signals. The multiphase clock signals may be used, for example, for timing the provision and/or receipt of data by the memory. The multiphase clock signals have relative phases with one another (e.g., 90 degrees) and with the data clock signals. In some memories, the clock circuits provide the multiphase clock signals having a phase relationship relative to the data clock signals that is unknown until determined by evaluation of one or more of the multiphase clock signals.
Determination of the phase relationship between the multiphase clock signals and the data clock signals may be required for proper operation of the memory. In such situations, the determination should be made quickly and efficiently so that proper operation of the memory may begin or resume with minimal delay and power consumption.